Cyclic Debugging for pSather, a Parallel Object-Oriented Programming Language
نویسنده
چکیده
The paper discusses the main aspects of a parallel debugger for the parallel object-oriented language pSather. PSather provides for a single shared-address space and for multiple threads per processor. Threads can arbitrarily migrate between processors. The debugger supports cyclic debugging which is a standard and quite effective technique for sequential programs. To address nondeterminism, deterministic replay is provided. For that reason, one program run is traced. The debugger uses these traces to repeatedly and identically reexecute the recorded program run. An efficient trace and replay scheme that is in particular suited for pSather and that reduces program perturbation and trace file length is presented. Furthermore, breakpoints and single-stepping for such a debugger using deterministic replay are discussed.
منابع مشابه
Experiences with Code and Hence in Visual Programming for Parallel Computing 16
Visual programming has particular appeal for explicit parallel programming, particularly coarse grain MIMD programming. Explicitly parallel programs are multi-dimensional objects; the natural representations of a parallel program are annotated directed graphs: data flow graphs, control flow graphs, etc. where the nodes of the graphs are sequential computations. A visually based (directed graph)...
متن کاملAn Overview of OCore : A Massively Parallel Object-based Language
In this paper we propose a massively parallel object-based language, OCore, as a research vehicle for massively parallel computation models. In addition to the fundamentals of existing parallel object-oriented languages, OCore introduces the notion of community , a structured set of objects that makes the distributed processing of messages possible together with their e cient implementation. OC...
متن کاملDeclarative Semantics in Object-Oriented Software Development - A Taxonomy and Survey
One of the modern paradigms to develop an application is object oriented analysis and design. In this paradigm, there are several objects and each object plays some specific roles in applications. In an application, we must distinguish between procedural semantics and declarative semantics for their implementation in a specific programming language. For the procedural semantics, we can write a ...
متن کاملComposites: Trees for Data Parallel Programming
Data parallel programming languages offer ease of programming and debugging and scalability of parallel programs to increasing numbers of processors. Unfortunately, the usefulness of these languages for non-scientific programmers and loosely coupled parallel machines is currently limited. In this paper, we present the composite tree model which seeks to provide greater flexibility via parallel ...
متن کاملThe Object-Oriented Components of the Enterprise Parallel Programming Environment
The Enterprise programming environment supports the development of applications that run concurrently on a network of workstations. This paper describes the object-oriented components of Enterprise, implemented in Smalltalk-80, and their seamless integration with the procedural components, implemented in C. The object-oriented user-interface supports a new anthropomorphic model for parallel com...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007